package com.szpx.service;

import com.github.pagehelper.PageInfo;
import com.szpx.entity.HZJ.Announcement;
import java.util.Map;

public interface AnnouncementService {

    /**
     * 分页查询公告列表
     * @param pageNum 当前页码
     * @param pageSize 每页数量
     * @param params 查询参数
     * @return 分页后的公告信息
     */
    PageInfo<Announcement> getAnnouncementsByPage(int pageNum, int pageSize, Map<String, Object> params);

    /**
     * 根据ID获取公告详情
     * @param id 公告ID
     * @return 公告实体
     */
    Announcement getAnnouncementById(Long id);

    /**
     * 创建新公告
     * @param announcement 公告实体
     * @return 是否成功
     */
    boolean createAnnouncement(Announcement announcement);

    /**
     * 更新公告信息
     * @param announcement 公告实体
     * @return 是否成功
     */
    boolean updateAnnouncement(Announcement announcement);

    /**
     * 根据ID删除公告
     * @param id 公告ID
     * @return 是否成功
     */
    boolean deleteAnnouncement(Long id);
}